Connecting wireless devices using visual image capture and processing

ABSTRACT

A method facilitates establishment of wireless pairing connections between wireless electronic devices by: initiating, at a first device, a connection utility that enables the first device to establish a wireless connection with at least one second device; capturing an image of a selected second device, representing a second device to which a wireless connection is desired; and scanning for identifying information about each discoverable second device that is within a connection range of the first device. The method further includes: forwarding the captured image and any detected identifying information to a wireless connectivity assist (WCA) service; receiving wireless connection setup and configuration (WCSC) instructions from the WCA service; and establishing the wireless connection with the selected second device utilizing wireless connection setup and configuration (WCSC) instructions received from the WCA service.

BACKGROUND

1. Technical Field

The present disclosure generally relates to wireless user devices, andin particularly to a method and system for facilitating wirelessconnectivity between two devices using visual image capture to identifya second of the two devices and retrieve a correct wireless connectionsetup process for the second device.

2. Description of the Related Art

Smart phones and other wireless user devices are commonly designed witha camera that enables the device to capture visual images. Thesewireless user devices are also configured with the capability towirelessly connect a first device to another device within certainproximity of the first device and thereby communicate information withthe other device. Examples of such wireless connections and/or protocolsinclude near field communication (NFC) or Bluetooth® or Wirelessfidelity (WiFi). The establishment of these wireless connectionsrequires a handshake operation in which certain setup procedures areimplemented at the first device and/or the other device to enable theconnection. Given the large number and variations in the availablesecond devices, occasionally, the first device cannot complete thehandshake with a particular second device because the first deviceand/or the device user does not have the required setup and/orconfiguration information required to complete the handshake for thatparticular second device.

BRIEF DESCRIPTION OF THE DRAWINGS

The description of the illustrative embodiments is to be read inconjunction with the accompanying drawings, which provide specificexamples that are not intended to limit the scope of the disclosure, andwherein:

FIG. 1 illustrates an example device pairing environment in which awireless connection assist (WCA) service can be utilized to facilitate ashort-range wireless connection between a first wireless device, such asa mobile phone, and a selected second device by utilizing an image ofthe selected second device to identify the correct wireless connectionsetup and configuration (WCSC) instructions, according to one or moreembodiments;

FIG. 2 provides a more detailed view of functional components of thefirst device, represented as a mobile phone, which supports wirelessconnectivity with both a near-by second device and a remote WCA service,in accordance with one or more embodiments;

FIG. 3 provides a more detailed view of the functional makeup of theexample remote WCA service, which maintains a WCA database of wirelessdevice images and associated WCSC instructions, in accordance with oneor more embodiments;

FIG. 4 provides a second view of the example device pairing environment,illustrating directional flow of various information packages viawireless mediums between the first devices and the WCA service, inaccordance with one or more embodiments;

FIG. 5 illustrates an example wireless connectivity assist (WCA)database maintained at the example WCA service, in accordance with oneembodiment;

FIG. 6 provides a flow chart of a method for configuring a wirelessconnection to a second device using a captured image of the seconddevice and WCSC instructions received from a WCA service, in accordancewith one embodiment;

FIG. 7 is a flow chart of a method implemented by the WCA service toidentify second devices and provide correct WSCS instructions based onevaluating received images and to update the WCA database based onreceived responses, in accordance with one or more embodiments; and

FIG. 8 is a flow chart illustrating a method by which the WCA serviceselects a second device based on the RSSI values received and updates acorrelation score based on success or failure of the pairing connection,in accordance with one embodiment.

DETAILED DESCRIPTION

The illustrative embodiments of the present disclosure provide awireless device and a method performed within a wireless device thatfacilitates establishment of wireless pairing connections between thewireless device and a second device. According to one aspect, the methodincludes: initiating, at a first device, a connection utility thatenables the first device to establish a wireless connection with atleast one second device; in response to a received input for imagecapture, capturing an image of a selected second device, representing asecond device to which a wireless connection is desired; and scanningfor identifying information about each discoverable second device thatis within a connection range of the first device. The method furtherincludes: forwarding the captured image and any detected identifyinginformation to a wireless connectivity assist (WCA) service; andestablishing the wireless connection with the selected second devicewhen wireless connection setup and configuration (WCSC) instructions arereceived from the WCA service.

In the following detailed description, exemplary embodiments in whichvarious aspects of the disclosure may be practiced are described insufficient detail to enable those skilled in the art to practice theinvention. It is to be understood that other embodiments may be utilizedand that logical, architectural, programmatic, mechanical, electricaland other changes may be made without departing from the spirit or scopeof the present disclosure. The following detailed description is,therefore, not to be taken in a limiting sense, and the scope of thepresent disclosure is defined by the appended claims and equivalentsthereof.

The description of the illustrative embodiments can be read inconjunction with the accompanying figures. Embodiments incorporatingteachings of the present disclosure are shown and described with respectto the figures presented herein. Within the descriptions of thedifferent views of the figures, similar elements are provided similarnames and reference numerals as those of the previous figure(s). Thespecific numerals assigned to the elements are provided solely to aid inthe description and are not meant to imply any limitations (structuralor functional or otherwise) on the described embodiment. It will beappreciated that for simplicity and clarity of illustration, elementsillustrated in the figures have not necessarily been drawn to scale. Forexample, the dimensions of some of the elements are exaggerated relativeto other elements.

It is understood that the use of specific component, device and/orparameter names, such as those of the executing utility, logic, and/orfirmware described herein, are for example only and not meant to implyany limitations on the described embodiments. The embodiments may thusbe described with different nomenclature and/or terminology utilized todescribe the components, devices, parameters, methods and/or functionsherein, without limitation. References to any specific protocol orproprietary name in describing one or more elements, features orconcepts of the embodiments are provided solely as examples of oneimplementation, and such references do not limit the extension of theclaimed embodiments to embodiments in which different element, feature,protocol, or concept names are utilized. Thus, each term utilized hereinis to be given its broadest interpretation given the context in whichthat term is utilized.

As further described below, implementation of the functional features ofthe disclosure described herein is provided within processing devicesand/or structures and can involve use of a combination of hardware,firmware, as well as several software-level constructs (e.g., programcode and/or program instructions and/or pseudo-code) that execute toprovide a specific utility for the device or a specific functionallogic. The presented figures illustrate both hardware components andsoftware and/or logic components.

Those of ordinary skill in the art will appreciate that the hardwarecomponents and basic configurations depicted in the figures may vary.The illustrative components are not intended to be exhaustive, butrather are representative to highlight essential components that areutilized to implement aspects of the described embodiments. For example,other devices/components may be used in addition to or in place of thehardware and/or firmware depicted. The depicted example is not meant toimply architectural or other limitations with respect to the presentlydescribed embodiments and/or the general invention.

FIG. 1 illustrates an example device pairing environment 100 in which awireless connection assist (WCA) service 150 can be utilized tofacilitate a short-range wireless connection between a first wirelessdevice 102, such as a mobile phone, and a selected second device (e.g.,Bluetooth (BT) headset 124) by utilizing an image of the selected seconddevice (124) to identify the correct wireless connection setup andconfiguration (WCSC) instructions, according to one or more embodiments.Device pairing environment 100 includes local wireless connectionenvironment 105 which represents the surrounding area of a first device102 within which one or more second devices are in pairing communicationrange (i.e., close enough to complete a local pairing with the firstwireless device 102. For simplicity, first wireless device 102 shall bereferred to as first device 102. While illustrated as a mobile phone, itis appreciated that first device 102 can be any one or a number ofdifferent devices and/or device types that supports wireless pairing toa second device in proximity of the first device 102.

Local wireless connection environment (LWCE) 105 includes a plurality ofsecond devices to which first device 102 can be paired. Among theillustrated second devices are wearable camera 112, wearable eyeglasses114, such as Google® Glass, both worn by a user 110, first Access Point(AP) 116, second AP 118, router 120, wearable smart watch 122, first BTheadset 124, second BT headset 126, and computer 130. Each second devicewithin LWCE 105 has a corresponding machine identifier (MAC ID) that isbroadcasted from the device when the device is on and/or in pairingmode. The second devices broadcast their respective MAC IDs with aparticular signal strength that is detectable by the first device 102and attributed with a received signal strength indicator (RSSI) relativeto the first device 102. The MAC ID and corresponding RSSI values areillustrated numbered sequentially with the device to which they belong,and include MAC ID RSSI 113, 115, 117, 119, 121, 123, 125, 127, and 131corresponding to second devices 112, 114, 116, 118, 120, 122, 124, 126,and 130.

Notably, in addition to first and second BT headsets 124, 126, a thirdBT headset 132 is illustrated outside of LWCE 105 as an example seconddevice to which first device 102 is not currently able to wirelesslyconnect. Third BT headset 132 has MAC ID RSSI 133, which is undetectableto first device 102 from within LWCE 105.

First device 102 is able to connect to and exchange communication withWCA service 150 via communication and data network (CDN) 140. Connectionwith or to CDN 140 can be via direct wireless network service or asecondary internet based network accessible to first device 102 via AP116, for example. The two-way connectivity paths are illustrated asbi-directional arrows. WCA service 150 is hosted on remote server 145and includes WCA database 155 illustrated by FIG. 5. Descriptions of theremote server 145 and WCA database 155 are presented below within thedescriptions of FIGS. 3 and 4.

FIG. 2 provides a more detailed view of functional components of thefirst device 102, represented as a wireless communication device such asa mobile phone, which supports wireless connectivity with both a near-bysecond device and a remote WCA service 150, in accordance with one ormore embodiments. While illustrated and occasionally referred to as amobile phone, first device 102 can be one of a host of different typesof user communication devices, including but not limited to, asmart-phone, a desktop computer, a laptop, a net-book, an ultra-book,and/or a tablet computing device. The various devices provide and/orinclude the necessary hardware and software to support the variouswireless or wired communication functions as part of device pairingenvironment 100.

First device 102 includes an integrated circuit (IC) processor 202,which connects via a plurality of bus interconnects (illustrated by thebi-directional arrows) to a plurality of functional components of firstdevice 102. Processor 202 can include one or more programmablemicroprocessors, such as a data processor 204 and a digital signalprocessor (DSP) 206, which, in some embodiments, may both be integratedinto a single processing device. Processor 202 controls thecommunication, application data processing and signal processing, userinterfacing, and other functions and/or operations of first device 102.Connected to processor 202 is memory 210, which can include volatilememory and/or non-volatile memory. One or more executable applicationsor programmed utilities can be stored within memory 210 for execution bydata processor 204 or in certain signal processing scenarios by DSP 206.For example, memory 210 is illustrated as containing a wirelessconnection utility 212, which includes wireless connection/connectivityassist (WCA) module 214 and a device wireless configuration setup (WCS)module 216. WCA module 214 includes discovered device list 218, userprompts 220, and success/failure notification 222. The associatedfunctionality and/or usage of each of the software modules will bedescribed in greater detail within the descriptions which follow. Memory210 also includes a camera (or image capture) utility 224, which cantemporarily store a captured image 242. It is appreciated that memory210 can also include other applications and/or services (not shown). Inalternate embodiments, one or more of the utilities illustrated withinmemory 210 can exist as firmware in other locations within first device102 and be utilized for controlling the operations of or execution byother controllers or specialized or dedicated processors within firstdevice 102.

First device 102 can include one or more input/output (I/O) devices 230that operate as user interface devices. These I/O devices 230 caninclude one or more input devices, such as camera 232, microphone 234,and touch screen and/or touch pad and/or keypad 236. The I/O devices 230can also include one or more output devices, such as display 238 andspeaker 239. The input devices can be utilized to access applications onthe first device 102, such as WCS module 216 and enter and/or updatevalues programmed therein.

First device 102 also includes data storage 240 that stores one or moredata utilized during operation of first device 102. Data storage 240 isalso coupled to processor 202 and can be any type of available storagedevice that is integral, attachable or insertable and capable of storingone or more application software and data. It is further appreciatedthat in one or more alternate embodiments, data storage 240 can actuallybe remote storage and not an integral part of the first device 102.Among the stored data are captured image data 242 and connectivity data244. Connectivity data 244 includes MAC ID RSSI data pairs 246 andconnection parameters 248 associated with specific connection to seconddevices.

As illustrated, first device 102 is capable of supporting multipledifferent forms of communication using several different technologies,according to a plurality of alternate embodiments. To support wirelesscommunication, first device 102 has at least one and preferably multipleof the different components that are illustrated within communicationmechanism(s) 250. Communication mechanism(s) 250 includes wireless widearea network (WWAN) transceiver 252 with connected antenna 253, whichenables first device 102 to communicate with a radio access network(RAN) 262 of a cellular network 260, which can be synonymous withcommunication and data network 140 (FIG. 1) for continuity with the FIG.1 description. For simplicity, one connected antenna 253 of WWANtransceiver 252 is depicted. However, WWAN transceiver 252 may beassociated with more than one antenna 253, each antenna having one ormore selected bandwidths of operation to support different modes ofcommunication or for simultaneous communication in differentcommunication technologies. RAN 262 is generally represented asincluding a base station, depicted as an evolved base node (“eNodeB”)264 that transmits and receives communication signals over a basestation antenna 266. The eNodeB 264 is illustrated communicativelyconnected to server 145, which is an example computing device on whichthe WCA service 150 (FIG. 1) is hosted.

In addition to WWAN transceiver 252 and associated components, firstdevice 102 can include a wireless local area network (WLAN) module 254to communicate with server 145 and/or wireless networks accessible viawireless access point 116. As an example, the WLAN module 254 maysupport IEEE 802.11 standards with the access point 116 operating as aWiFi hotspot. First device 102 can also include one or more close rangewireless communication technology modules, including a wireless personalaccess network (WPAN) or Bluetooth® transceiver 256 for communicationwith WPAN devices, depicted as a Bluetooth® headset 124, asports/biometric/physiological sensor, illustrated as watch 122, andother wearable device/s 112/114 (such as heads up display, camera,camera-equipped eye-glasses, etc.). WPAN transceiver 256 can supporttechnologies such as Infrared Data Association (IrDA) standard, WirelessUniversal Serial Bus (USB), Bluetooth®, Z-Wave, ZigBee, Body AreaNetwork, and ANT+. Alternatively or in addition, close range wirelesscommunication provided by first device 102 can include a near fieldcommunication (NFC) transceiver 258, such as can be utilized forexchanging files with another user device, such as wearable device112/114. Alternatively or in addition, first device 102 can also includecomponents for wired communication, such as Ethernet module 270 forconnecting to a local area network (LAN) 272. As further shown, firstdevice 102 can also include a global navigation satellite system (GNSS)receiver (RXR) 274, which can receive signals from GNSS satellite 276 inorder to provide location information. It is appreciated that thelocation of first device can also be obtained or determined vianetwork-assisted WiFi trilateration. This location information can beutilized in one embodiment to determine whether the current location ofthe first device 102 has a bearing on the type of connectivity accessthat can be provided to a second device (i.e., geographic restrictionsmay apply).

FIG. 3 provides a more detailed view of the functional makeup of theexample remote WCA service 150, which maintains a WCA database 155 ofwireless device images and associated WCSC instructions, in accordancewith one or more embodiments. WCS service 150 is hosted on remote server145. Remote server 145 is configured with processor 305, which iscoupled to memory 310 and storage 315 via a system interconnect or bus(shown as bidirectional arrows). Also coupled to processor 305 are oneor more I/O devices 335 and network interface device 340, which enablescommunication with or via an external network. WCA database 155 ismaintained within storage 315, in the illustrated embodiment.

As further illustrated by FIG. 4, WCA database 155 can be a datastructure, such as a table, that includes a series of columns and rowswithin which are stored descriptive information about the various typesof second devices that have been identified and for which connectivitydata and/or instructions are known. An identifier of each of a pluralityof second devices and corresponding information associated with thesecond device are presented within each row within WCA database 155. Thefirst column of WCA database 155 provides the manufacturer 402 of thevarious second devices represented within WCA database 155. Columns 2through 7 then provide model device type 404, MAC ID 406, correlationscore 408, image 1 410 through image N 412, and WCSC instructions 414for each of the manufacturers identified in column 1. Image 1 410 thoughimage N 412 represents a plurality of different views for a singledevice that can be utilized to identify the device and subsequentlyretrieve the WCSC instructions. According to one embodiment, the numberof different views for each device can vary based on images receivedfrom users of the service, and certain devices may have only a singleview while other devices can have multiple views associated therewith.Also, according to one aspect, WCA service 150 updates WCA database 155whenever a new image is received that has a high correlation toidentifying the particular device. Correlation score 408 provides avalue between an established range (e.g., 0 to 5) which identifies thelevel of correlation between a particular image for a correspondingdevice and the correctness of the WCSC instructions to enable pairingwith the second device based on receipt of the image.

It is appreciated that the WCA database 155, including the content andspecific sequencing of information within each row, is provided solelyfor example. Other formats and configurations or layouts of differentembodiments of WCA databases can be implemented in one or more alternateembodiments. For example, while only a single device is identified foreach manufacturer, it is understood that each manufacturer can have aplurality of devices each having a separate row entry within WCAdatabase 155. Also, a single second device can have different entrieswithin WCA database 155 based on the type of first device to which thesecond device is being paired. WCA database 155 can thus have aplurality of entries with different variations for each second device.

Returning to FIG. 3, firmware 320 is stored within memory 310 andincludes WCA utility 322. WCA utility 322 includes several functionalcomponents including image compare module 324, success/failure responsemodule 326, WCA new device handling module 327, and prompts generatingmodule 328. Aspects of the processing completed by WCA service 150 arepresented within the description of FIG. 6.

FIG. 5 provides another view of device pairing environment 100,illustrating directional flow of various information packages or messagetransfer between first device 102 and WCA service 150, during activepairing setup of first device 102 with an example second device,Bluetooth headset 124. The layout and components or devices within thedevice pairing environment have been presented above in the descriptionof FIG. 1. Within the FIG. 5 illustration, first BT headset 124represents a selected second device and for purposes of the descriptionherein of an illustrative embodiment, selected second device is assumedto be first BT headset 124. For better connectivity across thedescriptions of the remaining figures, additional functional descriptionof FIG. 5 will be presented along with the descriptions of the flowcharts of FIGS. 6 and 7.

FIG. 6 provides a flow chart of a method for configuring a wirelessconnection to a second device using a captured image of the seconddevice and WCSC instructions received from a WCA service, in accordancewith one embodiment. Specifically, the method facilitates establishmentof wireless pairing connections between wireless electronic devices.According to the illustrative embodiment, the various aspects of themethod are performed by processor 202 (FIG. 2) executing code andsoftware modules. The method 600 begins at the start block and proceedsto block 602 which provides for initiating, at a first device 102, aconnection utility 212 that enables the first device 102 to establish awireless connection with at least one second device (e.g., 124). Atblock 604, the connection utility initiates a connection setup processand generates a prompt for a user to initiate image capture of theselected second device. Then, in response to receiving an input toinitiate an image capture, the method captures an image of a selectedsecond device (block 606). The selected second device represents asecond device to which a wireless connection is desired. With the imageof the second device captured, method 600 includes scanning foridentifying information about each discoverable second device that iswithin a connection range of the first device (block 608). The methodfurther includes forwarding the captured image 505 and any detectedidentifying information (510) to a wireless connectivity assist (WCA)service 150 (block 610). According to one or more embodiments, and asillustrated by FIG. 5, a list of the detected and/or available seconddevices 510 is compiled and transmitted along with the captured image505 over dashed path A to WCA service 150. As further shown, thedetected identifying information includes a machine identifier MAC ID ofeach detected second device and a corresponding received signal strengthindicator (RSSI) of the MAC ID. In the figure, the dashed paths A and Bare illustrative of a communication channel that extends over one of thetwo wireless connections 520 between first device 102 and remote server145 via communication and data network 140.

Returning to FIG. 6, according to one embodiment, method 600 can includea number of optional steps, which are identified with dashed lines.Thus, concurrently with or following the forwarding of the capturedimage and the identifying information to the WCA service, method 600further includes initiating a timer for return of the WCSC instructions(block 612). Method 600 includes monitoring for one of (a) expiration ofthe timer and (b) receipt of the WCSC instruction, whichever occursfirst (decision block 614). When the timer expires prior to receivingany WCSC instructions, method 600 includes displaying a notificationthat the connection requires a manual setup (block 616). However, whenthe WCSC instructions are received prior to expiration of the timer,method 600 includes retrieving the instructions and implementing aseries of setup steps identified in the instructions to establish thewireless connection (block 618). Further, when the received WCSCinstructions include only instructions for manual setup andconfiguration, method 600 includes displaying the instructions on adisplay of the first device to enable a user to manually implement thesetup of the wireless connection. Method 600 further includesestablishing the wireless connection with the selected second devicewhen wireless connection setup and configuration (WCSC) instructions arereceived from the WCA service (block 620).

Also, in response to a successful completion of the wireless connectionfollowing the user selection, method 600 includes forwarding averification of the association to the WCA service 150 to trigger anupdate of the WCA database 155. Thus, when the wireless connection issuccessfully established using the WCSC instructions, as determined atdecision block 622, method 600 can optionally include forwarding, to theWCA service, a notification indicating successful connection (block624). However, when the wireless connection is not successfullyestablished using the WCSC instructions, method 600 includes forwarding,to the WCA service, a notification indicating connection failure (block626). In one implementation, prior to forwarding notification of one ofsuccessful or unsuccessful connection, the method includes: displaying aprompt requesting a user indication of whether the received WCSCinstructions facilitated a successful wireless connection with theselected second device; and selecting from among notification ofsuccessful or unsuccessful connection based on the user's response tothe prompt. Also, in one embodiment, forwarding of notification ofunsuccessful connection further comprises: prompting for entry ofadditional identifying information about the selected second device.This enables the user to provide the required details that may be neededto properly identify the selected second device. In at least oneembodiment, the user provided information is transmitted back to the WCAservice in order to improve the accuracy of future detection of similarsecond devices. Method 600 then terminates at the end block.

According to one embodiment, scanning for information about eachdiscoverable second device includes: retrieving and displaying detectedidentifying information on a display of the first electronic device. Themethod then further includes, in response to receiving both the capturedimage and a user selection of a specific one of the identifyinginformation: associating the captured image with the selectedidentifying information and forwarding the association to the WCAservice 150 for processing.

According to one or more embodiments, the method can include: receivingfrom the WCA service a request for manual entry of additional detailsabout the selected second device; generating a prompt requesting userinput of the other requested details; and forwarding, to the WCAservice, any other requested details received in response to the prompt.In at least one embodiment, the other requested details comprise atleast one of a request for a different image of the selected seconddevice and a request for entry of device identifier information fromamong one of a manufacturer, model number, serial number and type ofdevice.

FIG. 7 provides a flow chart of a method implemented by the WCA service150 to identify second devices and provide correct WSCS instructionsbased on evaluating received images and to update the WCA database 155based on received responses, in accordance with multiple embodiments. Itis appreciated that the various processes provided by method 700 can beimplemented at or on WCA server 145 or within first device 102 inalternate embodiments. Thus, in the illustrative embodiment, WCA service150 is provided at a remote server 145 hosting the WCA service 150,which is remotely accessed by first device 102 to determine whether theconnection instructions for the second device can be acquired based on amatch of a captured image of the second device within the WCA database155.

According to one alternate embodiment, the WCA service 150 and/orcertain functional modules of WCA utility 322 (FIG. 3.) execute onprocessor 202 within the first device 102, rather than at the remoteserver 145. In this specific implementation, method 700, which isprocessed as shown in FIG. 7, includes: receiving the captured image andthe identifying information (block 702); comparing the captured image toa set of pre-stored images of second devices (block 704); anddetermining at decision block 706 whether a match is found of thecaptured image within the WCA database. It is appreciated that the matchcan be a partial match as the angle at which the image is taken may notbe identical to the stored image/s of the second device, but may providesufficient details to within some percentage of assurance (e.g., 70%)that the captured image is of the particular second device. In responseto identifying a match of the captured image to at least one of thepre-stored images, as determined at decision block 706, method 700further includes: retrieving a stored MAC ID associated with thematching pre-stored image (block 708); comparing the MAC ID against thereceived identifying information detected by the first device (block710); and determining at decision block 712 if the stored MAC ID matchesone of the MAC IDs found within the received identifying information.When the stored MAC ID is identified as being one of the detected MACIDs within the received identifying information, method 700 includesselecting a second device corresponding to the stored MAC ID (block714). Method 700 then includes retrieving the WCSC instructionsassociated with the corresponding second device having the matchingpre-stored image (block 716); and forwarding the retrieved WCSCinstructions to the wireless connection utility of the first device tocomplete the setup of the wireless connection with the selected seconddevice (block 718).

Returning to decision block 706, in response to not finding a match ofthe captured image with the pre-stored images, method 700 furtherincludes: requesting additional information about the selected seconddevice (block 720); and updating the database by adding the capturedimage to the pre-stored images (block 722). Method 700 further includesassociating any additional information received in response to the firstrequest with the stored captured image (block 724). Next, the methodends.

Returning to decision block 712, method 700 further includes: inresponse to not finding a manufacturer-provided MAC ID or name for theselected second device within the identifying information, providing theWCSC information along with a request to place the selected seconddevice in at least one of a powered-up mode and a MAC ID broadcast mode(block 726). Method 700 then ends.

FIG. 8 provides a flow chart illustrating the method 800 by which theWCA service 150 selects a second device based on the RSSI valuesreceived with the identifying information, in response to not receivinga selection of a MAC ID with the captured image. Method 800 begins atstart block and includes: arranging a list of detected second devices inorder based on retrieved RSSI values (block 802); and assigning aclosest second device as the selected second device (block 804). Method800 further includes matching the MAC ID of the closest second devicewithin the WCA database (block 806); and providing the WCSC instructionsfor the closest second device (block 808). Additionally, method 800 canalso include: receiving one of a first notification of successfulconnection and a second notification of a failed connection from theconnection utility (block 810); and updating the WCA database based on areceived notification (block 812). Specifically, when it is determinedat decision block 814 that the first notification (i.e., a successfulconnection) is received, method 800 includes increasing a correlationscore of the captured image to the MAC ID and the selected second device(block 816). Method 800 then ends.

When the second notification (i.e., a failed connection) is received,method 800 includes changing a status of an association between thecaptured image and the selected second device to a “recently failed”status requiring new verification (block 818). In one embodiment, method800 optionally includes: in response to receiving the secondnotification indicating a failed connection, assigning a next closestsecond device as the selected second device and providing WCSCinstructions for that next closest second device (block 820). Method 800then ends.

In the flow charts of FIGS. 6-8 presented herein, certain processes ofthe methods can be combined, performed simultaneously or in a differentorder, or perhaps omitted, without deviating from the spirit and scopeof the described innovation. While the method steps are described andillustrated in a particular sequence, use of a specific sequence ofsteps is not meant to imply any limitations on the innovation. Changesmay be made with regards to the sequence of steps without departing fromthe spirit or scope of the present innovation. Use of a particularsequence is therefore, not to be taken in a limiting sense, and thescope of the present innovation is defined only by the appended claims.

As will be appreciated by one skilled in the art, embodiments of thepresent innovation may be embodied as a system, device, and/or method.Accordingly, embodiments of the present innovation may take the form ofan entirely hardware embodiment or an embodiment combining software andhardware embodiments that may all generally be referred to herein as a“circuit,” “module” or “system.”

Aspects of the present innovation are described below with reference toflowchart illustrations and/or block diagrams of methods, apparatus(systems) and computer program products according to embodiments of theinnovation. It will be understood that each block of the flowchartillustrations and/or block diagrams, and combinations of blocks in theflowchart illustrations and/or block diagrams, can be implemented bycomputer program instructions. These computer program instructions maybe provided to a processor of a general purpose computer, specialpurpose computer, or other programmable data processing apparatus toproduce a machine, such that the instructions, which execute via theprocessor of the computer or other programmable data processingapparatus, create means for implementing the functions/acts specified inthe flowchart and/or block diagram block or blocks.

While the innovation has been described with reference to exemplaryembodiments, it will be understood by those skilled in the art thatvarious changes may be made and equivalents may be substituted forelements thereof without departing from the scope of the innovation. Inaddition, many modifications may be made to adapt a particular system,device or component thereof to the teachings of the innovation withoutdeparting from the essential scope thereof. Therefore, it is intendedthat the innovation not be limited to the particular embodimentsdisclosed for carrying out this innovation, but that the innovation willinclude all embodiments falling within the scope of the appended claims.Moreover, the use of the terms first, second, etc. do not denote anyorder or importance, but rather the terms first, second, etc. are usedto distinguish one element from another.

The terminology used herein is for the purpose of describing particularembodiments only and is not intended to be limiting of the innovation.As used herein, the singular forms “a”, “an” and “the” are intended toinclude the plural forms as well, unless the context clearly indicatesotherwise. It will be further understood that the terms “comprises”and/or “comprising,” when used in this specification, specify thepresence of stated features, integers, steps, operations, elements,and/or components, but do not preclude the presence or addition of oneor more other features, integers, steps, operations, elements,components, and/or groups thereof.

The corresponding structures, materials, acts, and equivalents of allmeans or step plus function elements in the claims below are intended toinclude any structure, material, or act for performing the function incombination with other claimed elements as specifically claimed. Thedescription of the present innovation has been presented for purposes ofillustration and description, but is not intended to be exhaustive orlimited to the innovation in the form disclosed. Many modifications andvariations will be apparent to those of ordinary skill in the artwithout departing from the scope and spirit of the innovation. Theembodiment was chosen and described in order to best explain theprinciples of the innovation and the practical application, and toenable others of ordinary skill in the art to understand the innovationfor various embodiments with various modifications as are suited to theparticular use contemplated.

What is claimed is:
 1. A method for facilitating establishment ofwireless pairing connections between wireless electronic devices, themethod comprising: initiating, at a first device, a connection utilitythat enables the first device to establish a wireless connection with atleast one second device; capturing an image of a selected second device,representing a second device to which a wireless connection is desired;scanning for identifying information about each discoverable seconddevice that is within a connection range of the first device; forwardingthe captured image and any detected identifying information to awireless connectivity assist (WCA) service; receiving wirelessconnection setup and configuration (WCSC) instructions from the WCAservice; and establishing the wireless connection with the selectedsecond device utilizing the WCSC instructions received from the WCAservice.
 2. The method of claim 1, wherein the connection utilityinitiates a connection setup process and generates a prompt for a userto initiate image capture of the selected second device.
 3. The methodof claim 1, wherein scanning for information about each discoverablesecond device comprises: retrieving and displaying detected identifyinginformation on a display of the first electronic device; and in responseto receiving both the captured image and a user selection of a specificone of the identifying information: associating the captured image withthe selected identifying information and forwarding the association tothe WCA service for processing; and in response to a successfulcompletion of the wireless connection following the user selection,forwarding a verification of the association to the WCA service totrigger an update of the WCA database.
 4. The method of claim 1, whereinthe detected identifying information comprises a machine identifier MACID of each detected second device and a corresponding received signalstrength indicator (RSSI) of the MAC ID.
 5. The method of claim 1,wherein establishing the wireless connection comprises: initiating atimer for return of the WCSC instructions following the forwarding ofthe captured image and identifying information to the WCA service; whenthe timer expires prior to receiving any WCSC instructions, displaying anotification that the connection requires a manual setup; and when theWCSC instructions are received prior to expiration of the timer,retrieving the instructions; and implementing a series of setup stepsidentified in the instructions to establish the wireless connection. 6.The method of claim 5, further comprising: when the WCSC instructionsonly includes instructions for manual setup and configuration,displaying the instructions on a display of the first device to enable auser to manually implement the setup of the wireless connection.
 7. Themethod of claim 5, further comprising: receiving from the WCA service arequest for manual entry of additional details about the selected seconddevice; generating a prompt requesting user input of the other requesteddetails; and forwarding, to the WCA service, any other requested detailsreceived in response to the prompt, wherein the other requested detailscomprises at least one of a request for a different image of theselected second device, and a request for entry of device identifierinformation from one of a manufacturer, model number, serial number andtype of device.
 8. The method of claim 1, further comprising:forwarding, to the WCA service, a notification indicating successfulconnection when the wireless connection is successfully establishedusing the WCSC instructions; and forwarding, to the WCA service, anotification indicating connection failure when the wireless connectionis not successfully established using the WCSC instructions.
 9. Themethod of claim 8, wherein prior to forwarding one of the firstnotification and the second notification, the method comprises:displaying a prompt requesting a user indication of whether the receivedWCSC instructions facilitated a successful wireless connection with theselected second device; and selecting from among the first notificationand the second notification based on receipt of a corresponding first orsecond response to the prompt.
 10. The method of claim 8, wherein theforwarding of the second notification further comprises: prompting forentry of additional identifying information about the selected seconddevice.
 11. The method of claim 1, wherein the WCA service comprises aWCA utility executing within the first electronic device, and the methodfurther comprises: receiving the captured image and the identifyinginformation; comparing the captured image to a set of pre-stored imagesof second devices; and in response to identifying a match of thecaptured image to at least one of the pre-stored images: retrieving theWCSC instructions associated with the second device having the matchingpre-stored image; and forwarding the retrieved WCSC instructions to thewireless connection utility to complete the setup of the wirelessconnection with the selected second device.
 12. The method of claim 11,further comprising: in response to not finding a match of the capturedimage with the pre-stored images: providing a first request foradditional information about the selected second device; and updatingthe database by adding the captured image to the pre-stored images; andassociating any additional information received in response to the firstrequest with the stored captured image.
 13. The method of claim 11,wherein retrieving the WCSC instructions comprises: retrieving a MAC IDassociated with the matching pre-stored image; comparing the MAC IDagainst the detected identifying information; and in response toidentifying a match of the MAC ID with one detected MAC ID within theidentifying information: selecting a corresponding second device havingthe detected MAC ID; and retrieving the WCSC instructions for thatcorresponding second device.
 14. The method of claim 13, furthercomprising: in response to not finding a manufacturer-provided MAC ID orname for the selected second device within the identifying informationproviding the WCSC information along with a request to place theselected second device in at least one of a powered-up mode and a MAC IDbroadcast mode.
 15. The method of claim 11, further comprising: inresponse to not receiving a selection of a MAC ID with the capturedimage: arranging a list of detected second devices in order based onretrieved RSSI values; assigning a closest second device as the selectedsecond device; matching the MAC ID of the closest second device withinthe WCA database; and providing WCSC instructions for the closest seconddevice; and in response to receiving a second notification indicating afailed connection, assigning a next closest second device as theselected second device and providing WCSC instructions for that nextclosest second device.
 16. The method of claim 11, further comprising:receiving one of a first notification of successful connection and asecond notification of a failed connection from the connection utility;and updating the WCA database based on a received notification, whereinwhen the first notification is received, the WCA utility increases acorrelation score of the captured image to the MAC ID and the selectedsecond device and when the second notification is received, the WCAutility changes a status of an association between the captured imageand the selected second device to a recently failed status requiring newverification.
 17. An electronic device comprising: an image capturingdevice that captures an image of a second device; at least one wirelesscommunication component supporting establishment of one or more wirelessconnections with corresponding one or more second devices; a modem thatenables remote access to a wireless connection assist (WCA) servicehaving an associated WCA database; a processor communicatively coupledto the image capturing device, to the at least one wirelesscommunication component, and to the modem and which executes a wirelessconnection utility that configures the electronic device to: initiate aconnection utility that enables the first device to establish a wirelessconnection with at least one second device; in response to a receivedinput for image capture, capture an image of a selected second device,representing a second device to which a wireless connection is desired;scan for identifying information about each discoverable second devicethat is within a connection range of the first device; forward thecaptured image and any detected identifying information to a wirelessconnectivity assist (WCA) service; receive wireless connection setup andconfiguration (WCSC) instructions from the WCA service; and establishthe wireless connection with the selected second device utilizing WCSCinstructions received from the WCA service.
 18. The electronic device ofclaim 17, wherein the wireless connection utility further configures theelectronic device to: generate a prompt requesting the image capture ofthe selected second device; retrieve and display detected identifyinginformation on a display of the first electronic device; and in responseto receiving both the captured image and a user selection of a specificone of the identifying information: associate the captured image withthe selected identifying information and forward the association to theWCA service; and in response to a successful completion of the wirelessconnection following the user selection, forward a verification of theassociation to the WCA service to trigger an update of the WCA database.19. The electronic device of claim 18, wherein the WCA service comprisesa WCA utility executing within the first electronic device, and whichconfigures the electronic device to: receive the captured image and theidentifying information; compare the captured image to a set ofpre-stored images of second devices; and in response to identifying amatch of the captured image to at least one of the pre-stored images:retrieve the WCSC instructions associated with the second device havingthe matching pre-stored image; and forward the retrieved WCSC details tothe wireless connection utility to complete the setup of the wirelessconnection with the selected second device.
 20. The electronic device ofclaim 18, wherein the WCA utility further configures the electronicdevice to: in response to not finding a match of the captured image withthe pre-stored images: provide a first request for additionalinformation about the selected second device; and update the databaseby: adding the captured image to the pre-stored images; and associatingany additional information received in response to the first requestwith the stored captured image.
 21. The electronic device of claim 18,wherein to retrieve the WCSC instructions, the WCA utility furtherconfigures the electronic device to: first retrieve a MAC ID associatedwith the matching pre-stored image; compare the MAC ID against thedetected identifying information; and in response to identifying a matchof the MAC ID with one detected MAC ID within the identifyinginformation: select a corresponding second device having the detectedMAC ID; and retrieve the WCSC instructions for that corresponding seconddevice.